草庐IT

MySQL 枚举空值

全部标签

c# - 我如何分块可枚举?

我需要一个优雅的方法,它接受一个可枚举对象,并获取可枚举对象的可枚举对象,其中每个元素的数量都相同,但最后一个:publicstaticIEnumerable>Chunk(thisIEnumerablevalues,Int32chunkSize){//TODO:codethatchunks}这是我试过的:publicstaticIEnumerable>Chunk(thisIEnumerablevalues,Int32chunkSize){varcount=values.Count();varnumberOfFullChunks=count/chunkSize;varlastChunkS

c# - 降低字符串时解析枚举

我有一个非常有趣的问题,我不确定您是否可以使用这种方法来解决。我有一些字符串,都是小写的。我们就称它为商业法。现在,我有一个枚举类型,其值为BusinessLaw。我想做的是将businesslaw字符串转换为BusinessLaw枚举类型。通常我会这样做:return(EnumType)(Enum.Parse(typeof(EnumType),value));但是,当存在一些大小写差异时,这是不可能的。你会如何解决这个问题?还是天生无法解决? 最佳答案 您可以使用theoverloadofEnum.Parse最后一个参数表示区分大

c# - int 是枚举的支持类型

根据thispostint是enum的支持类型。当我检查.NET的源代码时System.Enum抽象类继承自System.ValueType抽象类。但是当我检查System.Int32结构它继承自接口(interface)而不是System.ValueType.相反,当我反编译mscorlib.dll并检查Int32结构时,它说该结构的基类型为System.ValueType.但仍然检查反编译的源代码,我看不到任何关于System.ValueType的信息。这让我觉得struct关键字使声明成为auto-Sytem.ValueType,Microsoft也在这个reference中表示

c# - 在带有空格的 ComboBox 中显示枚举

我有一个枚举,例如:enumMyEnum{My_Value_1,My_Value_2}与:comboBox1.DataSource=Enum.GetValues(typeof(MyEnum));但现在我的问题是:如何将“_”替换为“”,使其变为带空格而不是下划线的项目?而且数据绑定(bind)对象仍然作品 最佳答案 如果您有权访问Framework3.5,您可以执行以下操作:Enum.GetValues(typeof(MyEnum)).Cast().Select(e=>new{Value=e,Text=e.ToString().Re

c# - 枚举和减法运算符

有谁知道(也许:从什么时候开始)-=运算符在enum值上受支持?今天我正在愉快地编码,因为某种原因,我写了这个来从标志enum中排除一个值:flags-=FlagsEnum.Value1;在重新阅读和评估我的代码后,我很惊讶它编译后确实有效。将语句写成flags=flags-FlagsEnum.Value1但是不编译。到目前为止,我在文档和互联网上找不到任何内容。此外,不支持其他运算符(当然除了位运算符):+=(包括标志)、*=(Pascal中的交集)工作。这是C#编译器内置的语法糖吗?如果是这样,他们选择不包括其他运营商的原因是什么?一个简单的代码示例:usingSystem;usi

c# - 我如何在 MVC3 中的 Razor 页面上使用枚举?

我声明了一个枚举:publicenumHeightTypes{Tall,Short}现在我想像这样在我的Razor页面上使用它:@if(Model.Meta.Height==HeightTypes.Tall)但是有一个问题,因为我得到一个错误。有什么方法可以告诉razor页面关于我的枚举的信息吗? 最佳答案 您的枚举声明有误(删除结尾的;):publicenumHeightTypes{Short=0,Tall=1}那么下面的测试应该有效:@if(Model.Meta.Height==HeightTypes.Tall){}您只需确保您

c# - 枚举应该放在单独的文件中还是放在另一个类中?

我目前有一个包含以下枚举的类文件:usingSystem;namespaceHelper{publicenumProcessType{Word=0,Adobe=1,}}或者我应该在使用它的类中包含枚举吗?我注意到Microsoft为DockStyle创建了一个新的类文件:usingSystem;usingSystem.ComponentModel;usingSystem.Drawing.Design;namespaceSystem.Windows.Forms{publicenumDockStyle{None=0,Top=1,Bottom=2,Left=3,Right=4,.Fill=5

c# - 检查枚举是否有等于字符串的字段

我有一个枚举publicenumFileExtentions{mp3,mpeg}我有一个FileInfo,我想检查它的扩展名是否在前一个枚举中。我希望我能做一个FileExtensions.Any(e=>e.ToString().Equals(file.Extension));但是那太棒了。有什么想法吗? 最佳答案 Any…Equals背后的原因是什么?您是否忽略了Contains?boolresult=Enum.GetNames(typeof(FileExtensions)).Contains("mp3");

c# - 提高使用 .NET 枚举文件和文件夹的性能

我有一个包含数千个文件夹的基本目录。在这些文件夹中,可以有1到20个子文件夹,其中包含1到10个文件。我想删除所有超过60天的文件。我使用下面的代码来获取我必须删除的文件列表:DirectoryInfodirInfo=newDirectoryInfo(myBaseDirectory);FileInfo[]oldFiles=dirInfo.GetFiles("*.*",SearchOption.AllDirectories).Where(t=>t.CreationTime但是我让它运行了大约30分钟,但它仍然没有完成。我很好奇是否有人能看到我有可能提高上述行的性能,或者是否有不同的方法我

c# - 是否建议为所有 C# 枚举添加后缀 "Enum"以避免命名冲突?

Thisstackoverflowquestion有一个有趣的讨论关于如何避免给枚举和属性赋予相同的名称,这样你就没有这样的代码:publicSaveStatusSaveStatus{get;set;}似乎已接受的答案建议对枚举使用“状态”,对属性使用“状态”:publicSaveStatusSaveState{get;set;}但我认为这很难阅读并且不能立即清楚什么是什么。由于这个枚举命名问题是一个老生常谈的问题,我正在考虑简单地总是用“Enum”作为我的枚举的后缀,所以我会这样:publicSaveStatusEnumSaveStatus{get;set;}SaveStatus=S